package com.sam.query.mould.simple.domain;

import java.sql.Timestamp;
import java.util.Date;
import java.util.List;
import java.util.Map;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.GenericGenerator;

/**
 * Part entity.
 * @author MyEclipse Persistence Tools
 */
@SuppressWarnings("unchecked")
public class Part implements java.io.Serializable {

	// Fields    

	private static final long serialVersionUID = 1L;
	private String partId;
	private String projectId;
	private String productId;
	private String mouldId;
	private Integer partClassId;
	private String partName;
	private Integer materialId;
	private String drawPath;
	private String state;
	private String designer;
	private Date designDate;
	private String machiningAttribute;
	private Byte isKey;
	private String mark;
	private String jobType;
	private String jobProgress;
	private String destination;
	private int partMonitorID;
	private Integer priority;
	private String color;
	private Short shape;
	private String remark;
	private Integer partOrderId;
	private Short canExterior;
	private Integer schedulState;
	private int partType;
	private int partNums;
	private int disUseNums;
	private Date subTime;
	private String subMan;
	private Short pauseProcess;
	private String partFigID;
	private String verifyID;
	private String specifications;
	private String standardNumber;
	private String userField1;
	private String userField2;
	private Integer outsourcingNo;
	private Byte actualExterior;
	private String bomAttribute2;
	private String bomAttribute3;
	private Date scheduleStartTime;
	private Long pauseTechnicsId;
	private String associatedId;
	private Date createTime;
	private Date scheduleStopTime;
	private Integer processAttribute;
	private Integer partClassIdonGs;
	private String addRecordsPerson;
	private Date addRecordsTime;
	private String versionInfo;
	private String partClientId;

	//
	private List<Operation> operationList;
	private List<Operation> operationOrderList;
	private boolean isDeferred;
	private String partClassName;
	private String partProcess;
	private String workId;
	private String materialName;
	private Map processPercentMap;

	private Timestamp transferTime; //流转时间
	private int transferState; //流转状态 0:接收 1:发送
	private String transferCurrentDeptName;//操作人当前所在部门
	private String transferDeptName;//流转部门名
	private String transferOperatorName;

	private int operationNum;
	private boolean submit;

	private List<Field> fieldList;

	private boolean showTime;

	private int maxOperationNums;

	// Constructors

	/** default constructor */
	public Part() {
	}

	// Property accessors
	@GenericGenerator(name = "generator", strategy = "increment")
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "partID", unique = true, nullable = false, length = 50)
	public String getPartId() {
		return this.partId;
	}

	public void setPartId(String partId) {
		this.partId = partId;
	}

	@Column(name = "projectID", nullable = false, length = 50)
	public String getProjectId() {
		return this.projectId;
	}

	public void setProjectId(String projectId) {
		this.projectId = projectId;
	}

	@Column(name = "productID", nullable = false, length = 50)
	public String getProductId() {
		return this.productId;
	}

	public void setProductId(String productId) {
		this.productId = productId;
	}

	@Column(name = "mouldID", nullable = false, length = 50)
	public String getMouldId() {
		return this.mouldId;
	}

	public void setMouldId(String mouldId) {
		this.mouldId = mouldId;
	}

	@Column(name = "partClassID")
	public Integer getPartClassId() {
		return this.partClassId;
	}

	public void setPartClassId(Integer partClassId) {
		this.partClassId = partClassId;
	}

	@Column(name = "partName", nullable = false, length = 50)
	public String getPartName() {
		return this.partName;
	}

	public void setPartName(String partName) {
		this.partName = partName;
	}

	@Column(name = "materialID")
	public Integer getMaterialId() {
		return this.materialId;
	}

	public void setMaterialId(Integer materialId) {
		this.materialId = materialId;
	}

	@Column(name = "drawPath", length = 100)
	public String getDrawPath() {
		return this.drawPath;
	}

	public void setDrawPath(String drawPath) {
		this.drawPath = drawPath;
	}

	@Column(name = "state", length = 50)
	public String getState() {
		return this.state;
	}

	public void setState(String state) {
		this.state = state;
	}

	@Column(name = "designer", length = 50)
	public String getDesigner() {
		return this.designer;
	}

	public void setDesigner(String designer) {
		this.designer = designer;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "designDate", length = 23)
	public Date getDesignDate() {
		return this.designDate;
	}

	public void setDesignDate(Date designDate) {
		this.designDate = designDate;
	}

	@Column(name = "machiningAttribute", length = 10)
	public String getMachiningAttribute() {
		return this.machiningAttribute;
	}

	public void setMachiningAttribute(String machiningAttribute) {
		this.machiningAttribute = machiningAttribute;
	}

	@Column(name = "isKey")
	public Byte getIsKey() {
		return this.isKey;
	}

	public void setIsKey(Byte isKey) {
		this.isKey = isKey;
	}

	@Column(name = "mark", length = 10)
	public String getMark() {
		return this.mark;
	}

	public void setMark(String mark) {
		this.mark = mark;
	}

	@Column(name = "jobType", length = 20)
	public String getJobType() {
		return this.jobType;
	}

	public void setJobType(String jobType) {
		this.jobType = jobType;
	}

	@Column(name = "jobProgress", length = 10)
	public String getJobProgress() {
		return this.jobProgress;
	}

	public void setJobProgress(String jobProgress) {
		this.jobProgress = jobProgress;
	}

	@Column(name = "destination", length = 50)
	public String getDestination() {
		return this.destination;
	}

	public void setDestination(String destination) {
		this.destination = destination;
	}

	@Column(name = "ID", unique = true, nullable = false)
	public int getPartMonitorID() {
		return this.partMonitorID;
	}

	public void setPartMonitorID(int partMonitorId) {
		this.partMonitorID = partMonitorId;
	}

	@Column(name = "priority")
	public Integer getPriority() {
		return this.priority;
	}

	public void setPriority(Integer priority) {
		this.priority = priority;
	}

	@Column(name = "color", length = 20)
	public String getColor() {
		return this.color;
	}

	public void setColor(String color) {
		this.color = color;
	}

	@Column(name = "shape")
	public Short getShape() {
		return this.shape;
	}

	public void setShape(Short shape) {
		this.shape = shape;
	}

	@Column(name = "remark", length = 200)
	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "partOrderID")
	public Integer getPartOrderId() {
		return this.partOrderId;
	}

	public void setPartOrderId(Integer partOrderId) {
		this.partOrderId = partOrderId;
	}

	@Column(name = "canExterior")
	public Short getCanExterior() {
		return this.canExterior;
	}

	public void setCanExterior(Short canExterior) {
		this.canExterior = canExterior;
	}

	@Column(name = "schedulState", nullable = false)
	public Integer getSchedulState() {
		return this.schedulState;
	}

	public void setSchedulState(Integer schedulState) {
		this.schedulState = schedulState;
	}

	@Column(name = "partType", nullable = false)
	public int getPartType() {
		return this.partType;
	}

	public void setPartType(int partType) {
		this.partType = partType;
	}

	@Column(name = "partNums", nullable = false, precision = 18)
	public int getPartNums() {
		return this.partNums;
	}

	public void setPartNums(int partNums) {
		this.partNums = partNums;
	}

	@Column(name = "disUseNums", nullable = false, precision = 18, scale = 0)
	public int getDisUseNums() {
		return this.disUseNums;
	}

	public void setDisUseNums(int disUseNums) {
		this.disUseNums = disUseNums;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "subTime", length = 23)
	public Date getSubTime() {
		return this.subTime;
	}

	public void setSubTime(Date subTime) {
		this.subTime = subTime;
	}

	@Column(name = "subMan", length = 50)
	public String getSubMan() {
		return this.subMan;
	}

	public void setSubMan(String subMan) {
		this.subMan = subMan;
	}

	@Column(name = "pauseProcess")
	public Short getPauseProcess() {
		return this.pauseProcess;
	}

	public void setPauseProcess(Short pauseProcess) {
		this.pauseProcess = pauseProcess;
	}

	@Column(name = "partFigID", length = 50)
	public String getPartFigID() {
		return this.partFigID;
	}

	public void setPartFigID(String partFigId) {
		this.partFigID = partFigId;
	}

	@Column(name = "verifyID", nullable = false, length = 50)
	public String getVerifyID() {
		return this.verifyID;
	}

	public void setVerifyID(String verifyId) {
		this.verifyID = verifyId;
	}

	@Column(name = "specifications", length = 50)
	public String getSpecifications() {
		return this.specifications;
	}

	public void setSpecifications(String specifications) {
		this.specifications = specifications;
	}

	@Column(name = "standardNumber", length = 50)
	public String getStandardNumber() {
		return this.standardNumber;
	}

	public void setStandardNumber(String standardNumber) {
		this.standardNumber = standardNumber;
	}

	@Column(name = "userField1", length = 50)
	public String getUserField1() {
		return this.userField1;
	}

	public void setUserField1(String userField1) {
		this.userField1 = userField1;
	}

	@Column(name = "userField2", length = 50)
	public String getUserField2() {
		return this.userField2;
	}

	public void setUserField2(String userField2) {
		this.userField2 = userField2;
	}

	@Column(name = "outsourcingNo")
	public Integer getOutsourcingNo() {
		return this.outsourcingNo;
	}

	public void setOutsourcingNo(Integer outsourcingNo) {
		this.outsourcingNo = outsourcingNo;
	}

	@Column(name = "actualExterior")
	public Byte getActualExterior() {
		return this.actualExterior;
	}

	public void setActualExterior(Byte actualExterior) {
		this.actualExterior = actualExterior;
	}

	@Column(name = "bomAttribute2", length = 50)
	public String getBomAttribute2() {
		return this.bomAttribute2;
	}

	public void setBomAttribute2(String bomAttribute2) {
		this.bomAttribute2 = bomAttribute2;
	}

	@Column(name = "bomAttribute3", length = 50)
	public String getBomAttribute3() {
		return this.bomAttribute3;
	}

	public void setBomAttribute3(String bomAttribute3) {
		this.bomAttribute3 = bomAttribute3;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "scheduleStartTime", length = 23)
	public Date getScheduleStartTime() {
		return this.scheduleStartTime;
	}

	public void setScheduleStartTime(Date scheduleStartTime) {
		this.scheduleStartTime = scheduleStartTime;
	}

	@Column(name = "pauseTechnicsID", precision = 18, scale = 0)
	public Long getPauseTechnicsId() {
		return this.pauseTechnicsId;
	}

	public void setPauseTechnicsId(Long pauseTechnicsId) {
		this.pauseTechnicsId = pauseTechnicsId;
	}

	@Column(name = "associatedID", nullable = false, length = 100)
	public String getAssociatedId() {
		return this.associatedId;
	}

	public void setAssociatedId(String associatedId) {
		this.associatedId = associatedId;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "createTime", length = 23)
	public Date getCreateTime() {
		return this.createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "scheduleStopTime", length = 23)
	public Date getScheduleStopTime() {
		return this.scheduleStopTime;
	}

	public void setScheduleStopTime(Date scheduleStopTime) {
		this.scheduleStopTime = scheduleStopTime;
	}

	@Column(name = "processAttribute", nullable = false)
	public Integer getProcessAttribute() {
		return this.processAttribute;
	}

	public void setProcessAttribute(Integer processAttribute) {
		this.processAttribute = processAttribute;
	}

	@Column(name = "partClassIDonGS")
	public Integer getPartClassIdonGs() {
		return this.partClassIdonGs;
	}

	public void setPartClassIdonGs(Integer partClassIdonGs) {
		this.partClassIdonGs = partClassIdonGs;
	}

	@Column(name = "addRecordsPerson", length = 50)
	public String getAddRecordsPerson() {
		return this.addRecordsPerson;
	}

	public void setAddRecordsPerson(String addRecordsPerson) {
		this.addRecordsPerson = addRecordsPerson;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "addRecordsTime", length = 23)
	public Date getAddRecordsTime() {
		return this.addRecordsTime;
	}

	public void setAddRecordsTime(Date addRecordsTime) {
		this.addRecordsTime = addRecordsTime;
	}

	@Column(name = "versionInfo", length = 4)
	public String getVersionInfo() {
		return this.versionInfo;
	}

	public void setVersionInfo(String versionInfo) {
		this.versionInfo = versionInfo;
	}

	@Column(name = "partClientID", length = 50)
	public String getPartClientId() {
		return this.partClientId;
	}

	public void setPartClientId(String partClientId) {
		this.partClientId = partClientId;
	}

	public List<Operation> getOperationList() {
		return operationList;
	}

	public void setOperationList(List<Operation> operationList) {
		this.operationList = operationList;
	}

	public List<Operation> getOperationOrderList() {
		return operationOrderList;
	}

	public void setOperationOrderList(List<Operation> operationOrderList) {
		this.operationOrderList = operationOrderList;
	}

	public boolean getIsDeferred() {
		return isDeferred;
	}

	public void setIsDeferred(boolean isDeferred) {
		this.isDeferred = isDeferred;
	}

	public String getPartClassName() {
		return partClassName;
	}

	public void setPartClassName(String partClassName) {
		this.partClassName = partClassName;
	}

	public String getPartProcess() {
		return partProcess;
	}

	public void setPartProcess(String processPercent) {
		this.partProcess = processPercent;
	}

	public String getWorkId() {
		return workId;
	}

	public void setWorkId(String workId) {
		this.workId = workId;
	}

	public String getMaterialName() {
		return materialName;
	}

	public void setMaterialName(String materialName) {
		this.materialName = materialName;
	}

	public Timestamp getTransferTime() {
		return transferTime;
	}

	public void setTransferTime(Timestamp transferTime) {
		this.transferTime = transferTime;
	}

	public int getTransferState() {
		return transferState;
	}

	public void setTransferState(int transferState) {
		this.transferState = transferState;
	}

	public String getTransferCurrentDeptName() {
		return transferCurrentDeptName;
	}

	public void setTransferCurrentDeptName(String transferCurrentDeptName) {
		this.transferCurrentDeptName = transferCurrentDeptName;
	}

	public String getTransferDeptName() {
		return transferDeptName;
	}

	public void setTransferDeptName(String transferDeptName) {
		this.transferDeptName = transferDeptName;
	}

	public String getTransferOperatorName() {
		return transferOperatorName;
	}

	public void setTransferOperatorName(String transferOperatorName) {
		this.transferOperatorName = transferOperatorName;
	}

	public int getOperationNum() {
		return operationNum;
	}

	public void setOperationNum(int operationNum) {
		this.operationNum = operationNum;
	}

	public boolean isSubmit() {
		return submit;
	}

	public void setSubmit(boolean submit) {
		this.submit = submit;
	}

	public Map getProcessPercentMap() {
		return processPercentMap;
	}

	public void setProcessPercentMap(Map processPercentMap) {
		this.processPercentMap = processPercentMap;
	}

	public List<Field> getFieldList() {
		return fieldList;
	}

	public void setFieldList(List<Field> fieldList) {
		this.fieldList = fieldList;
	}

	public boolean isShowTime() {
		return showTime;
	}

	public void setShowTime(boolean showTime) {
		this.showTime = showTime;
	}

	public int getMaxOperationNums() {
		return maxOperationNums;
	}

	public void setMaxOperationNums(int maxOperationNum) {
		this.maxOperationNums = maxOperationNum;
	}

}